<!doctype html>
<html class="default no-js">
<head>
	<meta charset="utf-8">
	<meta http-equiv="X-UA-Compatible" content="IE=edge">
	<title>SwimLaneLayout | GoJS API</title>
	<meta name="description" content="Documentation for GoJS API">
	<meta name="viewport" content="width=device-width, initial-scale=1">
	<link rel="stylesheet" href="../../assets/css/style.css">
	<link rel="stylesheet" href="../assets/css/main.css">
	<script async src="../assets/js/search.js" id="search-script"></script>
</head>
<body>
<header>
	<nav id="navTop" class="w-full z-30 top-0 text-white bg-nwoods-primary">
		<div class="w-full container max-w-screen-lg mx-auto flex flex-wrap sm:flex-nowrap items-center justify-between mt-0 py-2">
			<div class="md:pl-4">
				<a class="text-white hover:text-white no-underline hover:no-underline
				font-bold text-2xl lg:text-4xl rounded-lg hover:bg-nwoods-secondary" href="../../index.html">
				<h1 class="mb-0 p-1 leading-none">GoJS</h1>
				</a>
			</div>
			<button id="topnavButton" class="rounded-lg sm:hidden focus:outline-none focus:ring" aria-label="Navigation">
				<svg fill="currentColor" viewBox="0 0 20 20" class="w-6 h-6">
					<path id="topnavOpen" fill-rule="evenodd" d="M3 5a1 1 0 011-1h12a1 1 0 110 2H4a1 1 0 01-1-1zM3 10a1 1 0 011-1h12a1 1 0 110 2H4a1 1 0 01-1-1zM9 15a1 1 0 011-1h6a1 1 0 110 2h-6a1 1 0 01-1-1z" clip-rule="evenodd"></path>
					<path id="topnavClosed" class="hidden" fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
				</svg>
			</button>
			<div id="topnavList" class="hidden sm:block items-center w-auto mt-0 text-white p-0 z-20">
				<ul class="list-reset list-none font-semibold flex justify-end flex-wrap sm:flex-nowrap items-center px-0 pb-0">
					<li class="p-1 sm:p-0"><a class="topnav-link" href="../../learn/index.html">Learn</a></li>
					<li class="p-1 sm:p-0"><a class="topnav-link" href="../../samples/index.html">Samples</a></li>
					<li class="p-1 sm:p-0"><a class="topnav-link" href="../../intro/index.html">Intro</a></li>
					<li class="p-1 sm:p-0"><a class="topnav-link" href="../../api/index.html">API</a></li>
					<li class="p-1 sm:p-0"><a class="topnav-link" href="https://www.nwoods.com/products/register.html">Register</a></li>
					<li class="p-1 sm:p-0"><a class="topnav-link" href="../../download.html">Download</a></li>
					<li class="p-1 sm:p-0"><a class="topnav-link" href="https://forum.nwoods.com/c/gojs/11">Forum</a></li>
					<li class="p-1 sm:p-0"><a class="topnav-link" href="https://www.nwoods.com/contact.html"
					target="_blank" rel="noopener" onclick="getOutboundLink('https://www.nwoods.com/contact.html', 'contact');">Contact</a></li>
					<li class="p-1 sm:p-0"><a class="topnav-link" href="https://www.nwoods.com/sales/index.html"
					target="_blank"rel="noopener" onclick="getOutboundLink('https://www.nwoods.com/sales/index.html', 'buy');">Buy</a></li>
				</ul>
			</div>
		</div>
		<hr class="border-b border-gray-600 opacity-50 my-0 py-0" />
	</nav>
	<div class="tsd tsd-page-header">
		<div class="tsd-page-toolbar">
			<div class="w-full max-w-screen-xl mx-auto px-2">
				<div class="table-wrap">
					<div class="table-cell" id="tsd-search" data-index="../assets/js/search.json" data-base="..">
						<div class="field">
							<label for="tsd-search-field" class="tsd-widget search no-caption">Search</label>
							<input id="tsd-search-field" type="text" />
						</div>
						<ul class="results">
							<li class="state loading">Preparing search index...</li>
							<li class="state failure">The search index is not available</li>
						</ul>
						<a href="../index.html" class="title">GoJS API</a>
					</div>
					<div class="table-cell" id="tsd-widgets">
						<div id="tsd-filter">
							<a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a>
							<div class="tsd-filter-group">
								<div class="tsd-select" id="tsd-filter-visibility">
									<span class="tsd-select-label">All</span>
									<ul class="tsd-select-list">
										<li data-value="public">Public</li>
										<li data-value="protected">Public/Protected</li>
										<li data-value="private" class="selected">All</li>
									</ul>
								</div>
							</div>
						</div>
						<a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a>
					</div>
				</div>
			</div>
		</div>
		<div class="tsd tsd-page-title">
			<div class="w-full max-w-screen-xl mx-auto px-2">
				<div class="top-copyright">
					<b>GoJS</b>&reg; Diagramming Components<br/>version 2.1.56<br/>by <a href="https://www.nwoods.com/">Northwoods Software&reg;</a>
				</div>
				<div>
					<h1>Class SwimLaneLayout</h1>
				</div>
			</div>
		</div>
	</div>
</header>
<div class="tsd w-full max-w-screen-xl mx-auto pb-4">
	<div class="row px-2 w-full">
		<div class="col-8 col-content">
			<section class="tsd-panel tsd-extension">
				<p>
					This is an extension and not part of the main GoJS library.
					Note that the API for this class may change at any time.
					If you intend to use an extension in production, you should copy the code to your own source directory.
					Extensions can be found in the GoJS kit under the <code>extensions</code>,
					<code>extensionsTS</code> (UMD modules), or <code>extensionsJSM</code> (ES6 modules) folders.
					See the <a href="../../intro/extensions.html">Extensions intro page</a> for more information.
				</p>
			</section>
			<section class="tsd-panel tsd-hierarchy">
				<h3>Hierarchy</h3>
				<ul class="tsd-hierarchy">
					<li>
						<a href="Layout.html" class="tsd-signature-type" data-tsd-kind="Class">Layout</a>
						<ul class="tsd-hierarchy">
							<li>
								<a href="LayeredDigraphLayout.html" class="tsd-signature-type" data-tsd-kind="Class">LayeredDigraphLayout</a>
								<ul class="tsd-hierarchy">
									<li>
										<span class="target">SwimLaneLayout</span>
									</li>
								</ul>
							</li>
						</ul>
					</li>
				</ul>
			</section>
			<section class="tsd-panel tsd-comment">
				<div class="tsd-comment tsd-typography">
					<p>A custom LayeredDigraphLayout that knows about &quot;lanes&quot;
					and that positions each node in its respective lane.</p>
					<p>This assumes that each Node.data.lane property is a string that names the lane the node should be in.
						You can set the <a href="SwimLaneLayout.html#laneProperty">laneProperty</a> property to use a different data property name.
						It is commonplace to set this property to be the same as the <a href="GraphLinksModel.html#nodeGroupKeyProperty">GraphLinksModel.nodeGroupKeyProperty</a>,
						so that the one property indicates that a particular node data is a member of a particular group
					and thus that that group represents a lane.</p>
					<p>The lanes can be sorted by specifying the <a href="SwimLaneLayout.html#laneComparer">laneComparer</a> function.</p>
					<p>You can add extra space between the lanes by increasing <a href="SwimLaneLayout.html#laneSpacing">laneSpacing</a> from its default of zero.
					That number&#39;s unit is columns, <a href="LayeredDigraphLayout.html#columnSpacing">LayeredDigraphLayout.columnSpacing</a>, not in document coordinates.</p>
				</div>
			</section>
			<section class="tsd-panel-group tsd-index-group">
				<h2>Index</h2>
				<section class="tsd-panel tsd-index-panel">
					<div class="tsd-index-content">
						<section class="tsd-index-section tsd-is-inherited">
							<h3>Constructors</h3>
							<ul class="tsd-index-list">
								<li class="tsd-kind-constructor tsd-parent-kind-class tsd-is-inherited"><a href="SwimLaneLayout.html#constructor" class="tsd-kind-icon">constructor</a></li>
							</ul>
						</section>
						<section class="tsd-index-section ">
							<h3>Properties</h3>
							<ul class="tsd-index-list">
								<li class="tsd-kind-get-signature tsd-parent-kind-class tsd-is-protected"><a href="SwimLaneLayout.html#laneBreadths" class="tsd-kind-icon">lane<wbr>Breadths</a></li>
								<li class="tsd-kind-accessor tsd-parent-kind-class"><a href="SwimLaneLayout.html#laneComparer" class="tsd-kind-icon">lane<wbr>Comparer</a></li>
								<li class="tsd-kind-accessor tsd-parent-kind-class"><a href="SwimLaneLayout.html#laneNames" class="tsd-kind-icon">lane<wbr>Names</a></li>
								<li class="tsd-kind-get-signature tsd-parent-kind-class tsd-is-protected"><a href="SwimLaneLayout.html#lanePositions" class="tsd-kind-icon">lane<wbr>Positions</a></li>
								<li class="tsd-kind-accessor tsd-parent-kind-class"><a href="SwimLaneLayout.html#laneProperty" class="tsd-kind-icon">lane<wbr>Property</a></li>
								<li class="tsd-kind-accessor tsd-parent-kind-class"><a href="SwimLaneLayout.html#laneSpacing" class="tsd-kind-icon">lane<wbr>Spacing</a></li>
							</ul>
						</section>
						<section class="tsd-index-section ">
							<h3>Methods</h3>
							<ul class="tsd-index-list">
								<li class="tsd-kind-method tsd-parent-kind-class"><a href="SwimLaneLayout.html#computeMinLaneWidth" class="tsd-kind-icon">compute<wbr>Min<wbr>Lane<wbr>Width</a></li>
								<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="SwimLaneLayout.html#findLane" class="tsd-kind-icon">find<wbr>Lane</a></li>
								<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="SwimLaneLayout.html#getLane" class="tsd-kind-icon">get<wbr>Lane</a></li>
							</ul>
						</section>
					</div>
				</section>
			</section>
			<section class="tsd-panel-group tsd-member-group tsd-is-inherited">
				<h2>Constructors</h2>
				<section class="tsd-panel tsd-member tsd-kind-constructor tsd-parent-kind-class tsd-is-inherited">
					<a name="constructor" class="tsd-anchor"></a>
					<h3>
						constructor
					</h3>
					<ul class="tsd-signatures tsd-kind-constructor tsd-parent-kind-class tsd-is-inherited">
						<li class="tsd-signature tsd-kind-icon">new <wbr>Swim<wbr>Lane<wbr>Layout<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="SwimLaneLayout.html" class="tsd-signature-type" data-tsd-kind="Class">SwimLaneLayout</a></li>
					</ul>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<div class="tsd-comment tsd-typography">
								<p>Constructs a <a href="LayeredDigraphLayout.html">LayeredDigraphLayout</a> with no <a href="Layout.html#network">Layout.network</a>
								and with no owning <a href="Layout.html#diagram">Layout.diagram</a>.</p>
							</div>
							<h4 class="tsd-returns-title">Returns <a href="SwimLaneLayout.html" class="tsd-signature-type" data-tsd-kind="Class">SwimLaneLayout</a></h4>
						</li>
					</ul>
				</section>
			</section>
			<section class="tsd-panel-group tsd-member-group ">
				<h2>Properties</h2>
				<section class="tsd-panel tsd-member tsd-kind-get-signature tsd-parent-kind-class tsd-is-protected">
					<a name="laneBreadths" class="tsd-anchor"></a>
					<h3>
						<span class="tsd-flag ts-flagProtected">Protected</span>
						<span class="tsd-flag ts-flagReadOnly">Read-only</span>
						lane<wbr>Breadths
					<span class="tsd-signature-symbol">: </span><a href="Map.html" class="tsd-signature-type" data-tsd-kind="Class">Map</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">&gt;</span>        </h3>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<div class="tsd-comment tsd-typography">
								<p>The computed breadths (widths or heights depending on the direction) of each lane,
								in the form of a <a href="Map.html">Map</a> mapping lane names (strings) to numbers.</p>
							</div>
						</li>
					</ul>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-accessor tsd-parent-kind-class">
					<a name="laneComparer" class="tsd-anchor"></a>
					<h3>
						lane<wbr>Comparer
					<span class="tsd-signature-symbol">: </span><span class="tsd-signature-symbol">(</span>a<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span>, b<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">number</span>        </h3>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<div class="tsd-comment tsd-typography">
								<p>Gets or sets a function by which to compare lane names, for ordering the lanes within the <a href="SwimLaneLayout.html#laneNames">laneNames</a> Array.
								By default the function is null -- the lanes are not sorted.</p>
							</div>
						</li>
					</ul>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-accessor tsd-parent-kind-class">
					<a name="laneNames" class="tsd-anchor"></a>
					<h3>
						lane<wbr>Names
					<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span>        </h3>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<div class="tsd-comment tsd-typography">
								<p>Gets or sets an Array of lane names.
									If you set this before a layout happens, it will use those lanes in that order.
								Any additional lane names that it discovers will be added to the end of this Array.</p>
								<p>This property is reset to an empty Array at the end of each layout.
								The default value is an empty Array.</p>
							</div>
						</li>
					</ul>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-get-signature tsd-parent-kind-class tsd-is-protected">
					<a name="lanePositions" class="tsd-anchor"></a>
					<h3>
						<span class="tsd-flag ts-flagProtected">Protected</span>
						<span class="tsd-flag ts-flagReadOnly">Read-only</span>
						lane<wbr>Positions
					<span class="tsd-signature-symbol">: </span><a href="Map.html" class="tsd-signature-type" data-tsd-kind="Class">Map</a><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">&gt;</span>        </h3>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<div class="tsd-comment tsd-typography">
								<p>The computed positions of each lane,
								in the form of a <a href="Map.html">Map</a> mapping lane names (strings) to numbers.</p>
							</div>
						</li>
					</ul>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-accessor tsd-parent-kind-class">
					<a name="laneProperty" class="tsd-anchor"></a>
					<h3>
						lane<wbr>Property
					<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">(</span>d<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span>        </h3>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<div class="tsd-comment tsd-typography">
								<p>Gets or sets the name of the data property that holds the string which is the name of the lane that the node should be in.
								The default value is &quot;lane&quot;.</p>
							</div>
						</li>
					</ul>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-accessor tsd-parent-kind-class">
					<a name="laneSpacing" class="tsd-anchor"></a>
					<h3>
						lane<wbr>Spacing
					<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span>        </h3>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<div class="tsd-comment tsd-typography">
								<p>Gets or sets the amount of additional space it allocates between the lanes.
									This number specifies the number of columns, with the same meaning as <a href="LayeredDigraphLayout.html#columnSpacing">LayeredDigraphLayout.columnSpacing</a>.
									The number unit is not in document coordinate or pixels.
								The default value is zero columns.</p>
							</div>
						</li>
					</ul>
				</section>
			</section>
			<section class="tsd-panel-group tsd-member-group ">
				<h2>Methods</h2>
				<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
					<a name="computeMinLaneWidth" class="tsd-anchor"></a>
					<h3>
						compute<wbr>Min<wbr>Lane<wbr>Width
					</h3>
					<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
						<li class="tsd-signature tsd-kind-icon">compute<wbr>Min<wbr>Lane<wbr>Width<span class="tsd-signature-symbol">(</span>lane<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></li>
					</ul>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<div class="tsd-comment tsd-typography">
								<p>Return the minimum lane width, in columns</p>
							</div>
							<h4 class="tsd-parameters-title">Parameters</h4>
							<ul class="tsd-parameters">
								<li>
									<h5>lane: <span class="tsd-signature-type">string</span></h5>
									<div class="tsd-comment tsd-typography">
									</div>
								</li>
							</ul>
							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4>
						</li>
					</ul>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-protected">
					<a name="findLane" class="tsd-anchor"></a>
					<h3>
						<span class="tsd-flag ts-flagProtected">Protected</span>
						find<wbr>Lane
					</h3>
					<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-protected">
						<li class="tsd-signature tsd-kind-icon">find<wbr>Lane<span class="tsd-signature-symbol">(</span>v<span class="tsd-signature-symbol">: </span><a href="LayeredDigraphVertex.html" class="tsd-signature-type" data-tsd-kind="Class">LayeredDigraphVertex</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></li>
					</ul>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<div class="tsd-comment tsd-typography">
								<p>This is just like <a href="SwimLaneLayout.html#getLane">getLane</a> but handles dummy vertexes
									for which the <a href="SwimLaneLayout.html#getLane">getLane</a> returns null by returning the
									lane of the edge&#39;s source or destination vertex.
								This can only be called after the lanes have been set up internally.</p>
							</div>
							<h4 class="tsd-parameters-title">Parameters</h4>
							<ul class="tsd-parameters">
								<li>
									<h5>v: <a href="LayeredDigraphVertex.html" class="tsd-signature-type" data-tsd-kind="Class">LayeredDigraphVertex</a></h5>
									<div class="tsd-comment tsd-typography">
									</div>
								</li>
							</ul>
							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4>
						</li>
					</ul>
				</section>
				<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-protected">
					<a name="getLane" class="tsd-anchor"></a>
					<h3>
						<span class="tsd-flag ts-flagProtected">Protected</span>
						get<wbr>Lane
					</h3>
					<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-protected">
						<li class="tsd-signature tsd-kind-icon">get<wbr>Lane<span class="tsd-signature-symbol">(</span>v<span class="tsd-signature-symbol">: </span><a href="LayeredDigraphVertex.html" class="tsd-signature-type" data-tsd-kind="Class">LayeredDigraphVertex</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></li>
					</ul>
					<ul class="tsd-descriptions">
						<li class="tsd-description">
							<div class="tsd-comment tsd-typography">
								<p>Given a vertex, get the lane (name) that its node belongs in.
									If the lane appears to be undefined, this returns the empty string.
								For dummy vertexes (with no node) this will return null.</p>
							</div>
							<h4 class="tsd-parameters-title">Parameters</h4>
							<ul class="tsd-parameters">
								<li>
									<h5>v: <a href="LayeredDigraphVertex.html" class="tsd-signature-type" data-tsd-kind="Class">LayeredDigraphVertex</a></h5>
									<div class="tsd-comment tsd-typography">
									</div>
								</li>
							</ul>
							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4>
						</li>
					</ul>
				</section>
			</section>
		</div>
		<div class="col-4 col-menu menu-sticky-wrap menu-highlight">
			<nav class="tsd-navigation primary">
				<ul>
					<li class=" ">
						<a href="../index.html">GoJS <wbr>Class <wbr>Index</a>
					</li>
				</ul>
			</nav>
			<nav class="tsd-navigation secondary menu-sticky">
				<ul class="before-current">
				</ul>
				<ul class="current">
					<li class="current tsd-kind-class tsd-is-extension">
						<a href="SwimLaneLayout.html" class="tsd-kind-icon">Swim<wbr>Lane<wbr>Layout</a>
						<ul>
							<li class=" tsd-kind-constructor tsd-parent-kind-class tsd-is-inherited">
								<a href="SwimLaneLayout.html#constructor" class="tsd-kind-icon">constructor</a>
							</li>
							<li class=" tsd-kind-get-signature tsd-parent-kind-class tsd-is-protected">
								<a href="SwimLaneLayout.html#laneBreadths" class="tsd-kind-icon">lane<wbr>Breadths</a>
							</li>
							<li class=" tsd-kind-accessor tsd-parent-kind-class">
								<a href="SwimLaneLayout.html#laneComparer" class="tsd-kind-icon">lane<wbr>Comparer</a>
							</li>
							<li class=" tsd-kind-accessor tsd-parent-kind-class">
								<a href="SwimLaneLayout.html#laneNames" class="tsd-kind-icon">lane<wbr>Names</a>
							</li>
							<li class=" tsd-kind-get-signature tsd-parent-kind-class tsd-is-protected">
								<a href="SwimLaneLayout.html#lanePositions" class="tsd-kind-icon">lane<wbr>Positions</a>
							</li>
							<li class=" tsd-kind-accessor tsd-parent-kind-class">
								<a href="SwimLaneLayout.html#laneProperty" class="tsd-kind-icon">lane<wbr>Property</a>
							</li>
							<li class=" tsd-kind-accessor tsd-parent-kind-class">
								<a href="SwimLaneLayout.html#laneSpacing" class="tsd-kind-icon">lane<wbr>Spacing</a>
							</li>
							<li class=" tsd-kind-method tsd-parent-kind-class">
								<a href="SwimLaneLayout.html#computeMinLaneWidth" class="tsd-kind-icon">compute<wbr>Min<wbr>Lane<wbr>Width</a>
							</li>
							<li class=" tsd-kind-method tsd-parent-kind-class tsd-is-protected">
								<a href="SwimLaneLayout.html#findLane" class="tsd-kind-icon">find<wbr>Lane</a>
							</li>
							<li class=" tsd-kind-method tsd-parent-kind-class tsd-is-protected">
								<a href="SwimLaneLayout.html#getLane" class="tsd-kind-icon">get<wbr>Lane</a>
							</li>
						</ul>
					</li>
				</ul>
				<ul class="after-current">
				</ul>
			</nav>
		</div>
	</div>
</div>
<div class="tsd w-full max-w-screen-xl mx-auto px-2">
	<div class="bottom-copyright">Copyright &copy; 1998-2021 by Northwoods Software Corporation.</div>
</div>
<div class="overlay"></div>
<script src="../assets/js/main.js"></script>
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-1506307-5"></script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('js', new Date()); gtag('config', 'UA-1506307-5');
  var getOutboundLink = function(url, label) {
    gtag('event', 'click', {
      'event_category': 'outbound',
      'event_label': label,
      'transport_type': 'beacon'
    });
  }

  // topnav
  var topButton = document.getElementById("topnavButton");
  var topnavList = document.getElementById("topnavList");
  topButton.addEventListener("click", function() {
    this.classList.toggle("active");
    topnavList.classList.toggle("hidden");
    document.getElementById("topnavOpen").classList.toggle("hidden");
    document.getElementById("topnavClosed").classList.toggle("hidden");
  });
</script>
</body>
</html>